Reading Time: 1 minutes
皆さんこんにちは。前回からAzure Active Directoryのコラムを担当している国井です。
前回、Azure Active Directory (Azure AD) を利用することで、それぞれのクラウドサービスにアクセスするたびにユーザー名・パスワードを入力しなくてもよくなる、という話をしました。このような仕組みを「シングルサインオン」と呼びますが、今回はシングルサインオンを行うことがセキュリティに与える影響についてお話します。
シングルサインオンは1回のユーザー名・パスワードの入力操作でどこにでもアクセスできる仕組みです。そのため、利用者側 (ユーザー) から見れば、ブラウザーでユーザー名・パスワードがキャッシュされているのと、Azure ADを使ってシングルサインオンしているのは、どちらも同じに見えます。そのため、Azure ADの利用を社内で検討するときは「わざわざAzure ADを利用するメリットがあるのか?」という議論もあるでしょう。
この質問に対する、セキュリティ面から見た答えは「まったく違います」。
このことを理解するために、Azure ADのシングルサインオンの仕組みについて解説しながら、確認していくことにしましょう。
Azure ADではシングルサインオンのために次の2つのテクノロジーを利用しています。
1. OpenID Connect, OAuth 2.0, SAML などのシングルサインオン用プロトコルを利用してシングルサインオンを実現
2. Azure ADにアクセスするクラウドサービスのパスワードをキャッシュし、アクセス時にキャッシュされたパスワードを利用してシングルサインオンを実現
1. の方法はクラウドサービスにアクセスするのに、そもそもパスワードを使いません。Azure ADでユーザー名とパスワードを使って認証を行うと、認証時の情報をもとにそれぞれのクラウドサービスにアクセスするためのトークンと呼ばれる情報を発行します。そして、ユーザーはトークンを持ってクラウドサービスにアクセスすると、誰がアクセスしたかということを識別し、アクセスを許可します。
シングルサインオンのプロトコルによって処理の流れは異なりますが、大まかには上の図のような処理でシングルサインオンを実現します。このことからもわかるようにクラウドサービスにはパスワードをまったく送信していないので、ブラウザーにパスワードをキャッシュする場合に比べて安全なアクセスが実現できることがわかります。
一方、シングルサインオン用プロトコルはAzure ADだけでなく、アクセス先となるクラウドサービスでもサポートしている必要があります。残念ながら、世の中のすべてのクラウドサービスでシングルサインオンプロトコルが利用できるわけでないので、その場合には2.の方法のAzure ADにパスワードをキャッシュする方法を利用します。
Azure ADにパスワードをキャッシュする方法は、ユーザーがクラウドサービスにアクセスするタイミングで自動的にAzure ADからクラウドサービスにパスワード (認証情報) を提示する (下図②から③の部分) ことで、ユーザーがパスワードを入力する必要がない、というものです。
このような話をすると、「なんだ、結局パスワードをキャッシュするのか」と思うかもしれません。しかし、ブラウザーにパスワードをキャッシュするのと、Azure ADのデータセンターにパスワードをキャッシュするのでは、パスワードが盗まれる確率がまったく異なります。自分のコンピューターでマルウェアに感染すれば簡単にキャッシュされたパスワードは盗まれてしまいますが、Azure ADのデータセンターとなれば、そうはいかないでしょう。
もうひとつ、Azure ADの利用に関する議論で出てくるのは、「スマートフォンやタブレットなどで利用可能なパスワード管理ソフトを使えば、パスワードは安全にキャッシュできる。だからAzure ADは要らないのでは?」という疑問です。
パスワード管理ソフトを使えば、確かにパスワードは安全にキャッシュできるかもしれません。しかし、Azure ADでは、誰がいつ、どこからアクセスしたか?についてログを収集しています。そのため、クラウドサービスにいつアクセスしたかについて一元的に確認できるというメリットがあります。会社の情報に誰がいつアクセスかを把握しておくことは多くの会社にとって重要なことでしょう。
以上のように、Azure ADでシングルサインオンを実現することは、単純にパスワードをブラウザーにキャッシュする場合に比べて、高いセキュリティレベルをもたらします。一般的にセキュリティと使い勝手は正反対の関係にあり、セキュリティを強化すると使い勝手が悪くなるといわれますが、シングルサインオンはセキュリティと使い勝手の両方を実現するテクノロジーなのです。
このようなメリットをもたらしてくれるAzure ADの具体的な利用方法について、次回からは紹介します。
株式会社ソフィアネットワーク所属。インターネットサービスプロバイダでの業務経験を経て、1997年よりマイクロソフト認定トレーナーとしてインフラ基盤に関わるトレーニング全般を担当。Azure ADを中心としたトレーニングの登壇やトレーニングコースの開発に従事するだけでなく、ブログ等のコミュニティ活動も評価され、2006年からAzure AD/Active Directoryの分野におけるMicrosoft MVPを12年連続で受賞する。
主な著作に『ひと目でわかるAzure Information Protection』 (日経BP)、『徹底攻略MCP問題集 Windows Server 2016』 (インプレスジャパン)、『ひとり情シスのためのWindows Server逆引きデザインパターン』 (エクスナレッジ) など。
ゾーホー社員のつぶやき
こんにちは、ゾーホージャパンの前田です。今回の記事では、AzureADを使用することで、よりセキュアなシングルサインオンを実現できることを学びました。また、パスワード管理ソフトを利用する場合と比べて、誰がいつ、どこからアクセスしたかという情報を管理できるという点がメリットが挙げられていましたが、ManageEngineが提供する監査ツール「ADAudit Plus」では、クラウド(AzureAD) + オンプレミス(Active Directory) のアクセスログを一つのWebコンソールにて一元管理することが可能です。
■ 「ADAudit Plus」とは?
Active Directoryのログをリアルタイムで収集して、200以上のレポートで可視化、およびアラート通知などを行うWebベースのオンプレミス型ソフトウェアです。Windowsドメイン上で管理されている、ドメインコントローラー/ファイルサーバー/メンバーサーバー/PCなどのITリソース、およびユーザー/グループ/ポリシーなどのオブジェクト情報から、簡単に監査レポートを作成します。
ADAudit Plusについて詳しく知りたい、一度使ってみたいという方は、ぜひ以下のURLにアクセスください。
【ADAudit Plusの製品ページ】
https://www.manageengine.jp/products/ADAudit_Plus/
【ADAudit Plusのダウンロードページ】
https://www.manageengine.jp/products/ADAudit_Plus/download.html
▼▼ 過去記事はこちら ▼▼
【MicrosoftのMVP解説!AzureADの虎の巻】第1回 AzureADを利用する意味
▼▼ 別シリーズのブログ記事もチェック! ▼▼
【MicrosoftのMVP解説!Active Directoryのハウツー読本】第1回 Active Directoryの必要性
フィードバックフォーム
当サイトで検証してほしいこと、記事にしてほしい題材などありましたら、以下のフィードバックフォームよりお気軽にお知らせください。